|
|
הוסיפו מידע על מעסיק
|
RT / Embedded
|
|
שאלות מראיונות עבודה לתפקיד
|
|
|
|
|
Theworker >
תוכנה
>
פירוט שאלות מראיונות עבודה לתפקיד RT / Embedded
פירוט שאלות מראיונות עבודה לתפקיד RT / Embedded
210 - 201 מתוך 419
|
|
|
|
ראיון לתפקיד RT / Embedded
בחברת Airspan
מרץ 2021
|
18.03.2021
|
|
|
פרטים לגבי התהליך |
ראיון ראשון עם ראש צוות ועוד עובד מהצוות. אנשים קלילים ונחמדים |
|
שאלות מתוך הראיון |
ממש את המשחק 7 בום - להדפיס כל מספר שלא מתחלק ב7 או שיש בו את הספרה 7. לאחר מכן עוד שאלה שאני לא זוכר.. |
|
|
|
|
הוסף מידע על החברה
|
עוד מידע על Airspan :
|
|
|
ראיון לתפקיד RT / Embedded
בחברת אלקון
מרץ 2021
|
02.03.2021
|
|
|
פרטים לגבי התהליך |
שאלות כלליות + מבחן 4.5 שעות |
|
שאלות מתוך הראיון |
המבחן ללא מחשבון ובלי אינטרנט חוץ ממה שמרשים
1. להמיר מספרים בין בסיסים
2. לכתוב תוכנית ב C שמדפיסה מספרים בין 1 ל 100 ומדפיסה אותם + בודקת מי מהם מתחלק ב 3 ו 5
3. נותנים תוכנית שבה יש פויינטר לכתובת מסויימת ובגוף התוכנית יש באותה שורה קריאה שינוי וכתיבה מחדש לאותו המשתנה שהפויינטר מצביע עליו והכל נעשה דרך הפויינטר מן הסתם התוכנית לפעמים לא עובדת מה הסיבה
4. להסביר 4 מתוך 8 מושגים
5. לכתוב תוכנית אשר מקבלת מספר '1' ומיקום ה '1' הראשון וצריך להכניס אותם למישתנה בגודל 8 ביט בלי להיתיחס למיקרי קצה |
|
תשובות |
הוסף תשובה
|
לצפיה בתשובות
|
|
|
|
|
מרץ 2021
|
|
3. משתנה עזר או פויינטר כפול
|
|
|
|
|
|
|
הוסף מידע על החברה
|
עוד מידע על אלקון :
|
|
|
ראיון לתפקיד RT / Embedded
בחברת קומברס
דצמבר 2020
|
28.02.2021
|
|
|
פרטים לגבי התהליך |
ראיון טכני מול מראיין אחד |
|
שאלות מתוך הראיון |
Movies on Flight
You are on a flight and wanna watch two movies during this flight.
You are given int[] movie_duration which includes all the movie durations.
You are also given the duration of the flight which is d in minutes.
Now, you need to pick two movies and the total duration of the two movies is less than or equal to (d - 30min).
Find the pair of movies with the longest total duration. If multiple found, return the pair with the longest movie. |
|
תשובות |
הוסף תשובה
|
לצפיה בתשובות
|
|
|
|
|
פברואר 2021
|
|
(function main(movies, d) {
if(!movies || !movies.length || d < 30) return [];
let n = movies.length,
i = 0,
j = n - 1;
let res = { a: 0, b: 0 }, max = -1;
while(i < j) {
let sum = movies[i] + movies[j];
if(sum <= d - 30) {
if(sum > max) {
res.a = movies[i];
res.b = movies[j];
max = sum;
}
i++;
} else {
j--;
}
}
if(max === -1) return [];
console.log([res.a, res.b]);
return [res.a, res.b];
}([90, 85, 75, 60, 120, 150, 125], 250));
|
|
|
|
|
|
|
הוסף מידע על החברה
|
עוד מידע על קומברס :
|
|
|
ראיון לתפקיד RT / Embedded
בחברת סיווה
פברואר 2021
|
21.02.2021
|
|
|
פרטים לגבי התהליך |
ראיון בזום עם notepad |
|
שאלות מתוך הראיון |
שאלה 1
בהנחה שהקלט תקין, ממש פונקציה char* compress(char* str( שמקבלת קלט מהסוג aaabbabc ומחזירה פלט מהסוג 3a2b1a1b1c
המשך:
ממש את הפונקציה הזו בצורה שהיא inplace כלומר לדרוס את המחרוזת הקיימת ובמקומה למלא את הערכים. הסבר מה הבעיות שאפשר להתקל בהן ואיך תפתור אותן.
המשך:
ממש זאת ב-O(n)
שאלה 2
נתון buffer שהוקצה לו זכרון בגודל 1024x1024. גודל כל בלוק הוא 1024.
ממש את הפונקציות הבאות בO(1): אתחול- void init_alloc(void* buff) שנקראת פעם אחת בתחילת התוכנית. ממש פונקציית void* alloc() שמחזירה כתובת לבלוק פנוי בתוך הבאפר. ממש פונקציית void free(void* ptr) ש"משחררת" את הזכרון ומפנה אותו לשימוש נוסף.
ניתן להניח שהקלט לפונקציית free תקין |
|
תשובות |
הוסף תשובה
|
לצפיה בתשובות
|
|
|
|
|
פברואר 2021
|
|
שאלה 1
השיטה הראשונה היא להקצות גודל מקסימלי של strlen(str)*2 + 1 עבור המחרוזת החדשה. לאחר מכן, לספור את כמות החזרות של תו מסוים ולכתוב את הערך '0' + count ומיד אחרי את התו שעליו חזרנו.
המשך:
הבעיות שיש עם ההשמה inplace הן דריסה של אברים שנצטרך אותם בהמשך וגם שאיננו יודעים כמה זכרון הוקצה למחרוזת (ניתן להניח שהוקצה מספיק)
המשך:
האזורים הבעייתיים הם המופעים הבודדים, למשל abc הם 3 מופעים בודדים. נעבור על כל המחרוזת מעבר ראשון ונספור את כמות המופעים הבודדים. לאחר מכן נעבור באיטרציה נוספת מהסוף להתחלה ונזיז את המופעים הבעייתיים למיקום הנכון עבורם (לא מומש אבל זה הרעיון הכללי)
שאלה 2
נאתחל counter בגודל מספר הבלוקים האפשריים (1024). בהתחלה בכל alloc נבצע counter-- עד שנגיע ל0. ברגע שביצעו free, נשתמש במבנה נתונים בצורה של רשימה מקושרת שתחזיק את הכתובת שהתפנתה. במידה והcounter שונה מ0, נקח את הכתובת הבאה בתור לפי הסדר. במידה והוא שווה 0, נקח את הכתובת הראשונה מהרשימה המקושרת של הכתובות הפנויות.
|
|
|
|
מאי 2021
|
|
אם המחרוזת מורכבת רק ממופעים בודדים, והאלגוריתם הוא Inplace אז האלגוריתם עם ההזזות יעלה n^2 כי עבור כל תו במקום ה i מזיזים n-i איברים מקום אחד קדימה.
|
|
|
|
דצמבר 2024
|
|
that's "design memory allocator" from leetcode
|
|
|
|
|
|
|
הוסף מידע על החברה
|
עוד מידע על סיווה :
|
|
|
ראיון לתפקיד RT / Embedded
בחברת קמרו-טק
אוגוסט 2020
|
28.01.2021
|
|
|
פרטים לגבי התהליך |
שלחתי קוח וחזרו אלי לגבי המשך מיון במשרדים |
|
שאלות מתוך הראיון |
1. מקבלים שלושה מספרים וצריך לפלוט אותם הפוך (צריך לממש בעזרת רשימה מקושרת).
2. שאלת היגיון – איך לבדוק שמעלית עובדת בצורה תקינה. ואז שתי מעליות. |
|
|
|
|
הוסף מידע על החברה
|
עוד מידע על קמרו-טק :
|
|
|
ראיון לתפקיד RT / Embedded
בחברת סמסונג
ינואר 2021
|
28.01.2021
|
|
|
פרטים לגבי התהליך |
הסבר על הקבוצה, שאלות על התפקיד הנוכחי ועל סיבת עזיבה. המראיין כתב את התשובות אצלו והמרואיין הכתיב לו (דרך אפליקציית web ייעודית של החברה) |
|
שאלות מתוך הראיון |
שאלה 1
נתון מערך של אורך שירים בשניות. לדוגמא [60,130,50,120]
ספור כמה זוגות שירים נותנים מספר שלם של דקות. לאחר מכן עשה זאת בO(N)
שאלה 2
שאלת היגיון, כמה 0 יש במספר 100!. איך חישבת? |
|
תשובות |
הוסף תשובה
|
לצפיה בתשובות
|
|
|
|
|
ינואר 2021
|
|
1. נבנה מערך חדש בגודל 60 שבו כל אינדקס ייצג את כמות השניות שיש בשיר עם מודולו 60 (לדוגמא מקום 0 ייצג כמה שירים יש במערך שהם כפולה שלמה של דקות). נעבור על כל איבר במערך הקיים, ונכניס למערך החדש באופן הבא: NewArr[Arr[i]%60]++.
לאחר שנקבל את המערך החדש, מקומות 0 ו-30 הם מיוחדים כי צריך למצוא את כל האפשרויות לזוגות בינם לבין עצמם.
שאר המקומות יספרו באופן הבא Min(Arr[i], Arr[60 - i])
2. מאחר ויש יותר מספרים זוגיים מ1-100 מאשר מספרים שמתחלקים ב-5, ספירת כמות המחלקים ב5 של כל המספרים מ5 עד 100 (למשל עבור 25 יש 2 מחלקים ב5)
|
|
|
|
|
|
|
הוסף מידע על החברה
|
עוד מידע על סמסונג :
|
|
|
ראיון לתפקיד RT / Embedded
בחברת ברודקום
ינואר 2021
|
28.01.2021
|
|
|
פרטים לגבי התהליך |
הסבר על המחלקה והצוות אליו מתראיינים, שאלות על החברה, על התפקיד ועל סיבת העזיבה ולאחר מכן שאלה מקצועית |
|
שאלות מתוך הראיון |
נתון עולם דו מימדי בגודל NxN שבו יש x אריות, y כבשים, z צמחים. אריה וכבש יכולים לזוז צעד ביום.
אריה אוכל כבש ובמידה ולא אכל d1 ימים הוא מת
כבש אוכל צמח ובמידה ולא אכל d2 ימים הוא מת
1. תתאר מבנה נתונים שיחזיק את המידע
2. מה הבעיות שיכולות להיות במבנה הנתונים שתיארת?
3. נתונה פונקציית rand. כיצד תפזר את החיות על פני העולם באופן אחיד? לאחר מכן תרשום אלגוריתם שיבצע את זה בO(N)
שאלה נוספת
4. נתונה פונקציית rand0-31, תבנה פונקציית rand0-3
5. תבנה פונקציית rand0-4 ככה שההתפלגות תהיה אחידה |
|
תשובות |
הוסף תשובה
|
לצפיה בתשובות
|
|
|
|
|
ינואר 2021
|
|
פתרון חלקי
1. ניתן לייצג בצורת מטריצה NxN של מצביעים לאלמנט. במידה והאלמנט הוא חיה, נשמור בתוכו איזו חיה נמצאת וכמה ימים היא לא אכלה.
2. במידה ו-N מאוד גדול ו-x,y,z קטנים יש בזבוז רב של זכרון
אפשרות נוספת
1. לשמור רשימות עם מיקומים לפי אלמנט. כלומר 3 רשימות: צמחים, כבשים ואריות.
3.
אפשרות 1:
נפזר את החיות עם פונקציה rand שפועלת על מיקום x,y. במידה ויצא מיקום שבר קיים, נבצע שוב פונקציית rand.
אפשרות 2:
נשמור מערך עם המקומות הפנויים ונבצע פונקציית rand על אינדקס המערך. ברגע ונבחר מקום, נוציא אותו מהמערך ונגריל מיקום עד גודל המערך החדש.
4. פשוט לקחת את 2 הביטים הראשונים של פונקציית rand 0-31
5. להבין למה x%5 לא יתן תוצאה אחידה (יש יותר סיכוי ל0 להיבחר מאשר ל4 למשל). לאחר שהבנו, במידה ונתקלים במספר שגורם להתפלגות לא להיות אחידה, מגרילים פעם נוספת עם אותה פונקציה.
|
|
|
|
מאי 2021
|
|
לגבי 3 האפשרות השניה, למחוק ממערך עולה גם O(N) ולכן במקרה הגרוע נשלם N בריבוע
|
|
|
|
|
|
|
הוסף מידע על החברה
|
עוד מידע על ברודקום :
|
|
יש לכם מה להוסיף ?
|
|
|
|
|
|